package com.ruima.study.arithmetic.sortdemo.practice;

/**
 * <p>
 * <p>交换奇偶</p>
 * <p>
 * <p>Copyright (c) 2024/11/15 16:23, 科大讯飞 All Rights Reserve</p>
 *
 * @author ruima6
 * @version [V1.0]
 */
public class demo6 {
    public static void main(String[] args) {
        int[] arr = {1,2,3,4,5};
        swap(arr);
        System.out.println(arr);
    }
    public  static void swap(int[] arr){
        int left = 0;
        int right  = arr.length - 1;

        while (left < right){
            // 左偶右奇
            if (arr[left] % 2 == 0 && arr[right] % 2 != 0){
                int temp = arr[left];
                arr[left] = arr[right];
                arr[right] = temp;
                left++;
                right--;
            }else if (arr[left] % 2 == 0 && arr[right] % 2 == 0){
                // 左右偶
                right--;
            }else if (arr[left] % 2 != 0 && arr[right] % 2 != 0){
                // 左右奇
                left++;
            }else {
                // 左奇右偶
                left++;
                right--;
            }
        }
    }
}
